[INFO] fetching crate chain_link 0.1.3...
[INFO] checking chain_link-0.1.3 against try#b66808126f24f2f30898306a881e1676824ea80c for pr-133502-23
[INFO] extracting crate chain_link 0.1.3 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate chain_link 0.1.3
[INFO] finished tweaking crates.io crate chain_link 0.1.3
[INFO] tweaked toml for crates.io crate chain_link 0.1.3 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate chain_link 0.1.3 on toolchain b66808126f24f2f30898306a881e1676824ea80c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b66808126f24f2f30898306a881e1676824ea80c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate chain_link 0.1.3 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b66808126f24f2f30898306a881e1676824ea80c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad
[INFO] running `Command { std: "docker" "start" "dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad" "/opt/rustwide/cargo-home/bin/cargo" "+b66808126f24f2f30898306a881e1676824ea80c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad" "/opt/rustwide/cargo-home/bin/cargo" "+b66808126f24f2f30898306a881e1676824ea80c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling seq-macro v0.3.6
[INFO] [stderr]     Checking chain_link v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:102:23
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:103:24
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:96:25
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |                         ^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Chain<0>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ types differ
[INFO] [stdout]     |
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Chain<0>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ types differ
[INFO] [stdout]     |
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Chain<0>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ types differ
[INFO] [stdout]     |
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Chain<0>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ
[INFO] [stdout]     |
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<3>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<3>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<3>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<3>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<3>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<3>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<3>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<3>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<4>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<4>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<4>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<4>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<4>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<4>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<4>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<4>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<5>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<5>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<5>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<5>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<5>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<5>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<5>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<5>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<6>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<6>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<6>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<6>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<6>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<6>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<6>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<6>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<7>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<7>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<7>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<7>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<7>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<7>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<7>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<7>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<8>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<8>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<8>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<8>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<8>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<8>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<8>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<8>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<9>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<9>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<9>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<9>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<9>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<9>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<9>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<9>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<10>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<10>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<10>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<10>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<10>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<10>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<10>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<10>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<11>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<11>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<11>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<11>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<11>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<11>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<11>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<11>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<12>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<12>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<12>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<12>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<12>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<12>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<12>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<12>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<13>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<13>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<13>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<13>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<13>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<13>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<13>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<13>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<14>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<14>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<14>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<14>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<14>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<14>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<14>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<14>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<15>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<15>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<15>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<15>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<15>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<15>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<15>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<15>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<16>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<16>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<16>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<16>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<16>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<16>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<16>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<16>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:102:23
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:103:24
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<17>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<17>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<17>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<17>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<17>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<17>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<17>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<17>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<18>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<18>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<18>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<18>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:96:25
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |                         ^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<18>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<18>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<18>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<18>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Chain<0>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ types differ
[INFO] [stdout]     |
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Chain<0>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ types differ
[INFO] [stdout]     |
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Chain<0>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ types differ
[INFO] [stdout]     |
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Chain<0>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ
[INFO] [stdout]     |
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<19>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<19>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<19>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<19>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<19>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<19>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<3>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<3>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<3>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<3>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<19>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<19>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<3>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<3>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<3>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<3>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<4>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<4>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<4>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<4>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<4>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<4>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<4>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<4>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<20>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<20>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<20>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<20>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<20>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<20>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<20>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<20>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<5>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<5>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<5>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<5>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<5>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<5>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<5>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<5>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<21>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<21>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<21>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<21>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<21>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<21>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<6>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<6>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<6>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<6>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<21>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<21>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<6>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<6>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<6>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<6>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<22>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<22>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<22>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<22>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<7>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<7>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<22>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<22>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<7>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<7>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<7>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<7>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<7>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<7>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<22>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<22>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<23>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<23>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<8>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<8>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<23>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<23>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<23>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<23>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<8>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<8>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<8>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<8>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<23>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<23>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<8>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<8>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<24>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<24>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<24>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<24>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<9>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<9>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<9>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<9>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<24>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<24>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<9>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<9>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<9>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<9>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<24>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<24>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<10>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<10>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<25>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<25>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<10>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<10>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<25>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<25>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<25>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<25>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<10>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<10>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<25>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<25>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<10>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<10>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<11>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<11>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<11>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<11>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<26>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<26>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<26>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<26>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<11>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<11>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<11>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<11>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<12>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<12>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<12>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<12>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<12>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<12>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<12>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<12>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<13>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<13>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<13>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<13>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<13>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<13>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<13>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<13>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<26>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<26>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<26>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<26>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<27>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<27>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<27>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<27>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<27>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<27>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<27>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<27>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<28>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<28>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<28>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<28>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<28>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<28>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<28>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<28>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<29>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<29>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<29>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<29>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<29>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<29>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<29>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<29>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<14>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<14>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<14>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<14>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<14>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<14>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<14>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<14>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<15>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<15>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<15>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<15>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<15>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<15>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<15>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<15>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<16>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<16>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<16>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<16>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<16>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<16>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<30>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<30>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<30>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<30>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<30>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<30>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<30>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<30>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<16>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<16>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<17>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<17>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<17>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<17>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<31>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<31>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<17>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<17>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<31>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<31>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<31>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<31>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<17>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<17>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<31>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<31>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<18>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<18>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<18>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<18>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<18>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<18>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:105:24
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:105:41
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<18>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<18>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<19>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<19>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<19>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<19>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<19>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<19>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<19>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<19>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<20>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<20>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<20>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<20>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<20>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<20>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<20>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<20>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<21>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<21>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<21>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<21>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<21>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<21>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<21>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<21>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<22>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<22>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<22>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<22>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<22>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<22>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<22>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<22>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<23>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<23>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<23>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<23>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<23>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<23>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<23>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<23>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<24>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<24>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<24>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<24>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<24>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<24>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<24>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<24>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<25>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<25>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<25>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<25>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<25>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<25>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<25>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<25>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<26>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<26>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<26>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<26>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<26>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<26>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<26>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<26>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<27>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<27>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<27>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<27>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<27>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<27>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<27>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<27>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<28>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<28>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<28>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<28>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<28>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<28>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<28>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<28>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<29>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<29>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/lib.rs:107:49
[INFO] [stdout]     |
[INFO] [stdout] 107 |             return <T as Chain<{N - 1}>>::chain(out);
[INFO] [stdout]     |                    ---------------------------- ^^^ expected `Chain::Out`, found `Link::Out`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/lib.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout]  64 |     fn chain(input: Self::In<'_>) -> Self::Out<'_>;
[INFO] [stdout]     |        ^^^^^ -----
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<29>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<29>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<29>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<29>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<29>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<29>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<30>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<30>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<30>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<30>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<30>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<30>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<30>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<30>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<31>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | /     impl<T> Link<N> for T
[INFO] [stdout]  97 | |     where
[INFO] [stdout]  98 | |         T: Chain<0>,
[INFO] [stdout]  99 | |         for<'a> T: Link<{N - 1}, In<'a> = <T as Chain<0>>::In<'a>>,
[INFO] [stdout] 100 | |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     | |__________________________________________________________________________^ the trait `Link<31>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<31>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         type In<'a> = <T as Chain<0>>::In<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^ the trait `Link<31>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<31>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         type Out<'a> = <T as Chain<{N - 1}>>::Out<'a>;
[INFO] [stdout]     |         ^^^^^^^^^^^^ the trait `Link<31>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Link<31>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Link<31>` is not implemented for `T`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:105:24
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |                        ^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<T as Chain<1>>::In<'a> == <T as Link<1>>::Out<'a>`
[INFO] [stdout]    --> src/lib.rs:105:41
[INFO] [stdout]     |
[INFO] [stdout] 105 |         fn link(input: Self::In<'_>) -> Self::Out<'_> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^ expected `Link::Out`, found `Chain::Out`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required for `T` to implement `Link<2>`
[INFO] [stdout]    --> src/lib.rs:96:13
[INFO] [stdout]     |
[INFO] [stdout]  96 |     impl<T> Link<N> for T
[INFO] [stdout]     |             ^^^^^^^     ^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         for<'a> T: Chain<{N - 1}, In<'a> = <T as Link<{N - 1}>>::Out<'a>>,
[INFO] [stdout]     |                                   -------------------------------------- unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/lib.rs:107:49
[INFO] [stdout]     |
[INFO] [stdout] 107 |             return <T as Chain<{N - 1}>>::chain(out);
[INFO] [stdout]     |                    ---------------------------- ^^^ expected `Chain::Out`, found `Link::Out`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<T as Chain<0>>::Out<'_>`
[INFO] [stdout]                found associated type `<T as Link<1>>::Out<'_>`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/lib.rs:64:8
[INFO] [stdout]     |
[INFO] [stdout]  64 |     fn chain(input: Self::In<'_>) -> Self::Out<'_>;
[INFO] [stdout]     |        ^^^^^ -----
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0271, E0277, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0271`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `chain_link` (lib test) due to 127 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0271, E0277, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0271`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `chain_link` (lib) due to 127 previous errors
[INFO] running `Command { std: "docker" "inspect" "dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad", kill_on_drop: false }`
[INFO] [stdout] dc645f0ff2575c93755be05c5de900753e599d60d1b9b8eda03a435bda6018ad
